package com.hang.service;

import com.hang.model.Leave;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hang.vo.LeaveVo;
import com.hang.vo.LeavesDTO;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;
import java.util.Map;

/**
 *
 */
public interface LeaveService extends IService<Leave> {
    //获取所有的请假列表
    List<LeavesDTO> getAllLeaves(String teacherId, Integer page, Integer size);

    //判断是否还有数据
    boolean hasMoreData(String teacherId, Integer page, Integer size);

    //查看请假的具体细节
    Map<String, Object> detail(Long id);

    //审批意见
    Integer approval(Long id, Integer status);

    //请假申请
    Map<String, Object> apply(LeaveVo leaveVo,String url);

    //统计功能：获取学生的请假数目
    Integer getStudentCounts(String studentId);

    //统计功能：获取教师管理的请假数目
    Integer getTeacherCounts(String teacherId);

    //判断是否有更多的记录：学生
    boolean hasMoreStudentData(String studentId, Integer page, Integer size);

    //获取学生的请假记录：按提交时间
    List<LeavesDTO> getMyLeaves(String studentId, Integer page, Integer size);
}
